Characterizing polynomial and exponential complexity classes in elementary lambda-calculus (abstract)
نویسندگان
چکیده
This paper fits in the research line of implicit computational complexity (ICC), whose goal is to characterize complexity classes without relying on explicit bounds on resources but instead by considering restrictions on programming languages and calculi. One can distinguish in this body of work between some monovalent characterisations, which provide a language for one given complexity class, e.g. PTIME in [4], and polyvalent characterisations in which the language allows to capture several complexity classes [5, 10]. Denote by FDTIME(F (n)) and by DTIME(F (n)) respectively the class of functions and the class of predicates on binary words computable on a deterministic Turing machine in time O(F (n)); in the following we will refer to complexity classes k-EXP = ∪i∈NDTIME(2 i k ) and k-FEXP = ∪i∈NFDTIME(2 i k ), for k ≥ 0. A particularly fruitful technical tool in this setting is linear logic together with its light versions, that exploit the isomorphism between proofs and programs. This logic indeed provides a powerful system to analyse the duplication and sharing of arguments in typed λ-calculus, and hence in functional languages, thanks to the introduction of a specific logical connective for the duplication of arguments, the ! modality. As in λ-calculus the reuse of an argument can cause a complexity explosion, the idea here is to use weak versions of ! to characterize complexity classes. This intuition is illustrated by elementary linear logic (ELL) [4, 3], a simple variant of linear logic which provides a monovalent characterisation of elementary complexity, that is to say computation in time bounded by a tower of exponentials of fixed height. Other variants of linear logic provide characterizations of PTIME, but they either use a more complicated language, like light linear logic (LLL) [4], or a more specific programming discipline, like soft linear logic (SLL) [6]. The ! modality in ELL has the effect of dividing the proofs-programs into strata, and the flow of information between these strata proceeds only in one-way. Let us call this phenomenon !-stratification. It was shown recently in [1] that a simple extension of ELL with type fixpoints and weakening actually provides a polyvalent characterization of the hierarchy of classes k-EXP for k ≥ 0, by means of a hierarchy of types. However this result was obtained by using proof-nets, which are a powerful tool but require some background in linear logic. The goal of the present work is to recast the methodology of !-stratification in the more standard setting of λ-calculus and to show that the resulting simple language is sufficient to obtain a polyvalent characterization of the hierarchy k-EXP for k ≥ 0. As a consequence this language also enables, beside the characterization of classes of predicates, the characterization of classes of functions on binary words. Here we will use a λ-calculus close to that of [12], without a let construction but with two kinds of λ-binders. We consider a type system, inspired by [2], bringing together the advantage of simplicity and the characterization of sub-elementary classes. We think that this λ-calculus-based approach pinpoints the key mechanisms at work in ELL and thus could serve as a basis for future characterizations of other complexity classes.
منابع مشابه
Characterizing Polynomial and Exponential Complexity Classes in Elementary Lambda-Calculus
In this paper an implicit characterization of the complexity classes k-EXP and k-FEXP, for k ≥ 0, is given, by a type assignment system for a stratified λ-calculus, where types for programs are witnesses of the corresponding complexity class. Types are formulae of Elementary Linear Logic (ELL), and the hierarchy of complexity classes k-EXP is characterized by a hierarchy of types.
متن کاملOn Elementary Linear Logic and polynomial time
Linear logic (LL) [Gir87] has been used in implicit computational complexity to characterize various complexity classes within the proofs-as-programs approach. This can then be the basis of type systems to guarantee complexity properties on lambda-calculus. As duplication is controlled in LL by the connective ! the key idea of this line of work is to consider variants of this system with a weak...
متن کاملOn the expressivity of elementary linear logic: Characterizing Ptime and an exponential time hierarchy
Elementary linear logic is a simple variant of linear logic due to Girard and which characterizes in the proofs-as-programs approach the class of elementary functions, that is to say functions computable in time bounded by a tower of exponentials of fixed height. Other systems like light and soft linear logics have then been defined to characterize in a similar way the more interesting complexi...
متن کاملSoft Linear Logic and Polynomial Complexity Classes
We describe some results inspired to Lafont’s Soft Linear Logic (SLL) which is a subsystem of second-order linear logic with restricted rules for exponentials, correct and complete for polynomial time computations. SLL is the basis for the design of type assignment systems for lambda-calculus, characterizing the complexity classes PTIME, PSPACE and NPTIME. PTIME is characterized by a type assig...
متن کاملA type assignment for lambda-calculus complete both for FPTIME and strong normalization
One of the aims of Implicit Computational Complexity is the design of programming languages with bounded computational complexity; indeed, guaranteeing and certifying a limited resources usage is of central importance for various aspects of computer science. One of the more promising approaches to this aim is based on the use of lambda-calculus as paradigmatic programming language and the desig...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2014